package com.zw.a.basic.a12.demo03_outputstream;

import java.io.FileOutputStream;

class Demo implements AutoCloseable{
    @Override
    public void close() throws Exception {
        System.out.println("看看我会不会自动调用");
    }
}


//案例: 通过try.catch.finally语句解决IO流的异常问题.
public class Demo04 {
    public static void main(String[] args){
        //JDK1.7的特性: try.with.resource语句, 写在try()中的对象, 会在{}中的内容执行完毕后, 自动回收.
        //目的: 简化释放资源.
        //原因: 写在try()中的对象必须实现 AutoCloseable接口.
        try (
           FileOutputStream fos = new FileOutputStream("day12/data/2.txt");
           Demo d = new Demo();
        ) {
            for (int i = 0; i < 10; i++) {
                fos.write("hello".getBytes());
                //换行符
                fos.write("\r\n".getBytes());
            }
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

}
